//package com.zmn.plat.dubbo.interfaces.price;
//
//import com.zmn.common.dto2.ResponseDTO;
//import com.zmn.plat.common.dto.category.AssCategoryDRO;
//import com.zmn.plat.common.dto.price.ItemTo;
//import com.zmn.plat.common.dto.price.ProductTariffCheckQuery;
//import com.zmn.plat.common.dto.price.advance.*;
//import com.zmn.plat.common.dto.product.base.ProductBaseDRO;
//import com.zmn.plat.common.dto.product.tariff.TariffBackProductDRO;
//import io.swagger.annotations.Api;
//import io.swagger.annotations.ApiOperation;
//import io.swagger.annotations.ApiParam;
//
//import javax.validation.constraints.NotEmpty;
//import javax.validation.constraints.NotNull;
//import java.util.List;
//import java.util.Map;
//
///**
// * 描述: 提前付流程接口类（所有接口前提是有计价器试点和预计价试点，专为提前付项目使用，接口是按照前台操作顺序来的）
// *
// * @author guoqiao
// * @since 2021/8/13 16:34
// */
//@Api(value = "前台产品查询计价器报价接口", tags = {"计价器"})
//public interface AdvanceFlowRemoteService {
//
//    /**
//     * 描述: 1.根据查询条件查询该分类下的开通计价器非默认前台产品
//     *
//     * @param query 查询条件
//     * @return List<ProductBaseDRO>
//     * @author guoqiao
//     * @since 2021/8/13 16:37
//     */
//    @ApiOperation(value = "根据查询条件查询该分类下的开通计价器非默认前台产品", response = ResponseDTO.class)
//    ResponseDTO<List<ProductBaseDRO>> listShowProduct(@NotNull(message = "入参不能为空")
//                                                      @ApiParam(value = "入参", required = true) AdvanceFtProductQuery query);
//
//    /**
//     * 描述: 2.根据查询条件查询项目集合
//     *
//     * @param query 查询条件
//     * @return List<TariffProductItemDRO>
//     * @author guoqiao
//     * @since 2021/8/13 16:37
//     */
//    @ApiOperation(value = "根据查询条件查询项目集合", response = ResponseDTO.class)
//    ResponseDTO<List<ItemTo>> listItemByQuery(@NotNull(message = "入参不能为空")
//                                              @ApiParam(value = "入参", required = true) AdvanceProductItemQuery query);
//
//    /**
//     * 描述: 3.根据查询条件查询后台产品二级分类
//     *
//     * @param query 查询条件
//     * @return List<AssCategoryDRO>
//     * @author guoqiao
//     * @since 2021/8/13 16:37
//     */
//    @ApiOperation(value = "根据查询条件查询后台产品二级分类", response = ResponseDTO.class)
//    ResponseDTO<List<AssCategoryDRO>> listCategTwoByQuery(@NotNull(message = "入参不能为空")
//                                                          @ApiParam(value = "入参", required = true) AdvanceProductQuery query);
//
//    /**
//     * 描述: 4.根据查询条件查询后台产品
//     *
//     * @param query 查询条件
//     * @return List<TariffBackProductDRO>
//     * @author guoqiao
//     * @since 2021/8/13 16:37
//     */
//    @ApiOperation(value = "根据查询条件查询后台产品", response = ResponseDTO.class)
//    ResponseDTO<List<TariffBackProductDRO>> listProductByQuery(@NotNull(message = "入参不能为空")
//                                                               @ApiParam(value = "入参", required = true) AdvanceProductQuery query);
//
////    /**
////     * 描述: 5.根据查询条件查询项目价格集合
////     *
////     * @param query 查询条件
////     * @return List<ItemTo>
////     * @author guoqiao
////     * @since 2021/8/18 14:11
////     */
////    @ApiOperation(value = "根据查询条件查询项目价格集合", response = ResponseDTO.class)
////    ResponseDTO<List<ItemTo>> listItemPriceByQuery(@NotNull(message = "入参不能为空")
////                                                   @ApiParam(value = "入参", required = true) AdvanceProductItemPriceQuery query);
//
//    /**
//     * 描述: 6.根据条件校验是否支持报价（计价器报价or提前付报价）
//     * <p>计价器试点 and （计价器价格表 or （预计价试点 and 提前付价格表））</>
//     *
//     * @param query
//     * @return java.util.HashMap<产品id,Boolean>
//     * @author guoqiao
//     * @since 2021/9/15 10:15
//     */
//    @ApiOperation(value = "根据条件校验是否支持计价器", response = ResponseDTO.class)
//    ResponseDTO<Map<Integer, Boolean>> listCheckTariff(@NotNull(message = "入参不能为空")
//                                                       @ApiParam(value = "入参", required = true) AdvanceFtProductCheckTariffQuery query);
//
//    /**
//     * 描述: 7.根据条件校验是否支持提前付报价
//     * <p>计价器试点 and 预计价试点 and 提前付价格表</>
//     *
//     * @param query
//     * @return java.util.HashMap<产品id,Boolean>
//     * @author guoqiao
//     * @since 2021/9/15 10:15
//     */
//    @ApiOperation(value = "根据条件校验是否支持提前付报价", response = ResponseDTO.class)
//    ResponseDTO<Map<Integer, Boolean>> listCheckAdvance(@NotNull(message = "入参不能为空")
//                                                        @ApiParam(value = "入参", required = true) AdvanceFtProductCheckTariffQuery query);
//
//}
